#pragma once

#include "e2d/core/trans/AnimationClip.h"
#include "e2d/core/trans/Animator.h"
#include "e2d/core/trans/TransformNode.h"
#include "e2d/core/trans/Grid.h"
#include "e2d/core/trans/LayoutGrid.h"

namespace e2d
{
    namespace trans
    {
        struct Components
        {
            static std::vector<std::string> m_Labels;

            static bool AddComponent(e2d::Entity* entity, const e2d::ComponentType& type);

            static bool CopyComponents(const e2d::Entity* source, e2d::Entity* target, bool copyPosition = true);
        };
    }
};

